package com.example.tests;

import static org.testng.Assert.assertEquals;

import java.util.Collections;
import java.util.List;
import java.util.Random;

import org.testng.annotations.Test;

public class ContactModificationTests extends TestBase{
	@Test
	
	public void modifySomeContact() {
	app.getNavigationHelper().openMainPage();
	
	// save old state
	 	List<ContactData> oldList = app.getContactHelper().getContacts();
	 	Random rnd = new Random();
		int index = rnd.nextInt(oldList.size() - 1);
	 	
	// actions
	app.getContactHelper().gotoContactEditPage(0);
	
	ContactData contact = new ContactData();
	contact.firstName = "newname";
	//kontakt.lastName = "newLastname";
	app.getContactHelper().fillContactForm(contact);	
	
	
	
	app.getContactHelper().submitContactModification();	
	
	app.getNavigationHelper().returnToHome();	
	
	// save new state
    List<ContactData> newList = app.getContactHelper().getContacts();
    
    // compare states
      
    oldList.remove(index);
    oldList.add(contact);
    Collections.sort(oldList);
    assertEquals(newList, oldList);
	
	}
}
